Donut Quest II Level Editor
by Mikhail Lavrov (DarkerLine) of United-TI

http://mpl.unitedti.org/	(My TI-related Blog)
http://www.unitedti.org/	(the United-TI home page)
misha.p.l@gmail.com		(my email)

This is the level editor for Donut Quest II, which you can currently find in the United-TI program archives (http://www.unitedti.org/index.php?download=263) and which should soon appear in the ticalc.org archives as well.
Donut Quest II uses Lists to store its levels, which can have any name of up to 5 characters.

How to use:

Go to the [PRGM] menu, find DONUTEDT (this program), press [ENTER], then press [ENTER] again to run it.

You will see a menu that offers you the following choices:

1. New Level - creates a blank level with only one tile (the brick wall)

2. Edit Level - opens a level you've created, but perhaps not finished, for editing.

3. Combine Levels - if several levels go together, you can combine them into a level pack.

4. Exit - if you're tired of my level editor :-(


Editing levels:

You have several tools to edit a level. I'll describe these in order.

1. Tile editor

You can have up to seven tiles, in addition to the blank tile and the donut, and here, you can customize how they look.

Once you select a tile, a window comes up where you can see both an enlarged version of the tile, and a preview of how it will actually look. Use the arrows to move around the tile, and either [ENTER] or [2ND] to change the selected pixel. Once you're done, press [CLEAR] to go to the previous screen.
There is a particular combination of pixels in a column that Donut Quest can't handle, and if you ever attempt to create it, you will get the message "INVALID TILE - PRESS ANY KEY". Try to work around that limit, it's not too hard. If you get it while doing something complicated like erasing several pixels, try to do it in a different order.

2. Collision Editor

This is where you get to describe what each tile actually does. Each square in the matrix contains the result of what happens when you push the tile at the beginning of the row into the tile at the top of the column. To make it easier, a verbal explanation of what the square means is given at the bottom.
"INVALID" means these two tile can't be pushed into one another, "LOSES" means that you have to restart the level if you push these two tile together, and "WINS" means you win by performing this action. 
You change these with the [2ND] and [ALPHA] keys (to cycle forward and backward through the tiles respectively). [CLEAR] returns to the previous screen.
Some common things you could use this system with:
-to make a tile you cannot push, like a wall, set its entire row to "invalid."
-to make a tile that kills you, set its entire row to "-" (loses).
-to make a tile that you win by getting to, set its entire row to "+" (wins).
-to make a tile you can push, set the first square in its row (pushing it into the empty tile) to itself.
-to make a bomb, set all but the first square in its row to the empty tile (don't try this at home).

3. Map Editor

This is where you desgin the level. The | and - on the left and top sides of the screen indicate where your cursor is. By pressing [2ND] and [ALPHA], you can cycle the tile where your cursor is, either forward or backward through the tiles. If you press [2ND] where the character is, you can select his initial starting location.
Once you're done, press [CLEAR].

4. Quit and save

Select this to save the level. It will do something for a few seconds, then display "TIME TO SAVE" on the screen. At this point, press the [STO->] button and type the name of your level (the screen will look like 'Ans->NAME'), then press [ENTER]. You're out of the program and can do whatever you want.
One of the things done during this process is that if some of your last tiles are never used (in the map and in the collision editor), they will be removed from the level.

5. Quit without saving

Maybe you didn't like the level, or you didn't make any changes to it like you thought you would. This is a faster way to exit, it doesn't spend several seconds saving the level.